import { IPanelDetailControllerParams } from './i-panel-detail-controller-params';

/**
 * 面板属性项控制器输入参数基类接口
 *
 * @export
 * @interface IPanelFieldControllerParams
 * @extends {IPanelDetailControllerParams}
 */
export interface IPanelFieldControllerParams
	extends IPanelDetailControllerParams {
	/**
	 * 是否禁用
	 *
	 * @type {boolean}
	 * @memberof IPanelFieldControllerParams
	 */
	disabled: boolean;

	/**
	 * 启用条件
	 *
	 * @type {number}
	 * @memberof IPanelFieldControllerParams
	 */
	enableCond: number;

	/**
	 * 默认状态
	 *
	 * @type {('0' | '1' | '2')}
	 * @memberof IPanelFieldControllerParams
	 */
	fieldState: '0' | '1' | '2';

	/**
	 * 绑定数据项
	 *
	 * @type {string}
	 * @memberof IPanelFieldControllerParams
	 */
	dataItemName: string;

	/**
	 * 绘制模式
	 *
	 * @type {('TEXT' | 'HEADING1' | 'HEADING2' | 'HEADING3' | 'HEADING4' | 'HEADING5' | 'HEADING6' | 'PARAGRAPH')}
	 * @memberof IPanelFieldControllerParams
	 */
	renderMode:
		| 'TEXT'
		| 'HEADING1'
		| 'HEADING2'
		| 'HEADING3'
		| 'HEADING4'
		| 'HEADING5'
		| 'HEADING6'
		| 'PARAGRAPH';

	/**
	 * 换行模式
	 *
	 * @type {(string | 'WRAP' | 'NOWRAP')}
	 * @memberof IPanelFieldControllerParams
	 */
	wrapMode: string | 'WRAP' | 'NOWRAP';

	/**
	 * 文本垂直对齐模式
	 *
	 * @type {(string | 'TOP' | 'MIDDLE' | 'BOTTOM')}
	 * @memberof IPanelFieldControllerParams
	 */
	vAlign: string | 'TOP' | 'MIDDLE' | 'BOTTOM';

	/**
	 *
	 * 文本水平对齐模式
	 * @type {(string | 'LEFT' | 'CENTER' | 'RIGHT' | 'JUSTIFY')}
	 * @memberof IPanelFieldControllerParams
	 */
	hAlign: string | 'LEFT' | 'CENTER' | 'RIGHT' | 'JUSTIFY';

	/**
	 * 是否必填
	 *
	 * @type {boolean}
	 * @memberof IPanelFieldControllerParams
	 */
	required: boolean;
}
